package com.molichuxing.services.infrastructure.bean;

import com.molichuxing.framework.bean.RootBean;

import java.math.BigDecimal;
import java.time.LocalDateTime;

public class EnterpriseCarBean extends RootBean {
    /**
     * id
     */
    private Integer id;

    /**
     * 订单号 order_code
     */
    private Long orderCode;

    /**
     * 车辆id car_id
     */
    private Integer carId;

    /**
     * 车架号 vin
     */
    private String vin;

    /**
     * 车牌号 licence_plate
     */
    private String licencePlate;

    /**
     * 车型id model_id
     */
    private Integer modelId;

    /**
     * 车身颜色id color_id
     */
    private Integer colorId;

    /**
     * 状态（1：待付款，2：待交车，3：待起租，4：租赁中，5：已退租，6：已过户，7：已续租） state
     */
    private Integer state;

    /**
     * 每月租金 monthly_rental
     */
    private BigDecimal monthlyRental;

    /**
     * 每期租金 periods_rental
     */
    private BigDecimal periodsRental;

    /**
     * 保证金 deposit
     */
    private BigDecimal deposit;

    /**
     * 里程上限（月度） mileage_upper
     */
    private Integer mileageUpper;

    /**
     * 起始里程 start_mileage
     */
    private Integer startMileage;

    /**
     * 结束里程（不存在续租为退租里程，存在续租为续租生效时里程） end_mileage
     */
    private Integer endMileage;

    /**
     * 创建时间 gmt_create
     */
    private LocalDateTime gmtCreate;

    /**
     * 修改时间 gmt_modified
     */
    private LocalDateTime gmtModified;

    /**
     * orders_enterprise_car
     */
    private static final long serialVersionUID = 1L;

    /**
     * @return id
     * @date 2020-06-04 15:17:22
     */
    @Override
    public Integer getId() {
        return id;
    }

    /**
     * @param id
     * @date 2020-06-04 15:17:22
     */
    @Override
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * 订单号
     *
     * @return order_code 订单号
     * @date 2020-06-04 15:17:22
     */
    public Long getOrderCode() {
        return orderCode;
    }

    /**
     * 订单号
     *
     * @param orderCode 订单号
     * @date 2020-06-04 15:17:22
     */
    public void setOrderCode(Long orderCode) {
        this.orderCode = orderCode;
    }

    /**
     * 车辆id
     *
     * @return car_id 车辆id
     * @date 2020-06-04 15:17:22
     */
    public Integer getCarId() {
        return carId;
    }

    /**
     * 车辆id
     *
     * @param carId 车辆id
     * @date 2020-06-04 15:17:22
     */
    public void setCarId(Integer carId) {
        this.carId = carId;
    }

    public String getVin() {
        return vin;
    }

    public void setVin(String vin) {
        this.vin = vin;
    }

    public String getLicencePlate() {
        return licencePlate;
    }

    public void setLicencePlate(String licencePlate) {
        this.licencePlate = licencePlate;
    }

    /**
     * 车型id
     *
     * @return model_id 车型id
     * @date 2020-06-04 15:17:22
     */
    public Integer getModelId() {
        return modelId;
    }

    /**
     * 车型id
     *
     * @param modelId 车型id
     * @date 2020-06-04 15:17:22
     */
    public void setModelId(Integer modelId) {
        this.modelId = modelId;
    }

    /**
     * 车身颜色id
     *
     * @return color_id 车身颜色id
     * @date 2020-06-04 15:17:22
     */
    public Integer getColorId() {
        return colorId;
    }

    /**
     * 车身颜色id
     *
     * @param colorId 车身颜色id
     * @date 2020-06-04 15:17:22
     */
    public void setColorId(Integer colorId) {
        this.colorId = colorId;
    }

    /**
     * 状态（1：待付款，2：待交车，3：待起租，4：租赁中，5：已退租，6：已过户，7：已续租）
     *
     * @return state 状态（1：待付款，2：待交车，3：待起租，4：租赁中，5：已退租，6：已过户，7：已续租）
     * @date 2020-06-04 15:17:22
     */
    public Integer getState() {
        return state;
    }

    /**
     * 状态（1：待付款，2：待交车，3：待起租，4：租赁中，5：已退租，6：已过户，7：已续租）
     *
     * @param state 状态（1：待付款，2：待交车，3：待起租，4：租赁中，5：已退租，6：已过户，7：已续租）
     * @date 2020-06-04 15:17:22
     */
    public void setState(Integer state) {
        this.state = state;
    }

    /**
     * 每月租金
     *
     * @return monthly_rental 每月租金
     * @date 2020-06-04 15:17:22
     */
    public BigDecimal getMonthlyRental() {
        return monthlyRental;
    }

    /**
     * 每月租金
     *
     * @param monthlyRental 每月租金
     * @date 2020-06-04 15:17:22
     */
    public void setMonthlyRental(BigDecimal monthlyRental) {
        this.monthlyRental = monthlyRental;
    }

    /**
     * 每期租金
     *
     * @return periods_rental 每期租金
     * @date 2020-06-04 15:17:22
     */
    public BigDecimal getPeriodsRental() {
        return periodsRental;
    }

    /**
     * 每期租金
     *
     * @param periodsRental 每期租金
     * @date 2020-06-04 15:17:22
     */
    public void setPeriodsRental(BigDecimal periodsRental) {
        this.periodsRental = periodsRental;
    }

    /**
     * 保证金
     *
     * @return deposit 保证金
     * @date 2020-06-04 15:17:22
     */
    public BigDecimal getDeposit() {
        return deposit;
    }

    /**
     * 保证金
     *
     * @param deposit 保证金
     * @date 2020-06-04 15:17:22
     */
    public void setDeposit(BigDecimal deposit) {
        this.deposit = deposit;
    }

    /**
     * 里程上限（月度）
     *
     * @return mileage_upper 里程上限（月度）
     * @date 2020-06-04 15:17:22
     */
    public Integer getMileageUpper() {
        return mileageUpper;
    }

    /**
     * 里程上限（月度）
     *
     * @param mileageUpper 里程上限（月度）
     * @date 2020-06-04 15:17:22
     */
    public void setMileageUpper(Integer mileageUpper) {
        this.mileageUpper = mileageUpper;
    }

    /**
     * 起始里程
     *
     * @return start_mileage 起始里程
     * @date 2020-06-04 15:17:22
     */
    public Integer getStartMileage() {
        return startMileage;
    }

    /**
     * 起始里程
     *
     * @param startMileage 起始里程
     * @date 2020-06-04 15:17:22
     */
    public void setStartMileage(Integer startMileage) {
        this.startMileage = startMileage;
    }

    /**
     * 结束里程（不存在续租为退租里程，存在续租为续租生效时里程）
     *
     * @return end_mileage 结束里程（不存在续租为退租里程，存在续租为续租生效时里程）
     * @date 2020-06-04 15:17:22
     */
    public Integer getEndMileage() {
        return endMileage;
    }

    /**
     * 结束里程（不存在续租为退租里程，存在续租为续租生效时里程）
     *
     * @param endMileage 结束里程（不存在续租为退租里程，存在续租为续租生效时里程）
     * @date 2020-06-04 15:17:22
     */
    public void setEndMileage(Integer endMileage) {
        this.endMileage = endMileage;
    }

    /**
     * 创建时间
     *
     * @return gmt_create 创建时间
     * @date 2020-06-04 15:17:22
     */
    @Override
    public LocalDateTime getGmtCreate() {
        return gmtCreate;
    }

    /**
     * 创建时间
     *
     * @param gmtCreate 创建时间
     * @date 2020-06-04 15:17:22
     */
    @Override
    public void setGmtCreate(LocalDateTime gmtCreate) {
        this.gmtCreate = gmtCreate;
    }

    /**
     * 修改时间
     *
     * @return gmt_modified 修改时间
     * @date 2020-06-04 15:17:22
     */
    @Override
    public LocalDateTime getGmtModified() {
        return gmtModified;
    }

    /**
     * 修改时间
     *
     * @param gmtModified 修改时间
     * @date 2020-06-04 15:17:22
     */
    @Override
    public void setGmtModified(LocalDateTime gmtModified) {
        this.gmtModified = gmtModified;
    }

    /**
     * @mbg.generated
     */
    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", orderCode=").append(orderCode);
        sb.append(", carId=").append(carId);
        sb.append(", vin=").append(vin);
        sb.append(", licencePlate=").append(licencePlate);
        sb.append(", modelId=").append(modelId);
        sb.append(", colorId=").append(colorId);
        sb.append(", state=").append(state);
        sb.append(", monthlyRental=").append(monthlyRental);
        sb.append(", periodsRental=").append(periodsRental);
        sb.append(", deposit=").append(deposit);
        sb.append(", mileageUpper=").append(mileageUpper);
        sb.append(", startMileage=").append(startMileage);
        sb.append(", endMileage=").append(endMileage);
        sb.append(", gmtCreate=").append(gmtCreate);
        sb.append(", gmtModified=").append(gmtModified);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}